package com.suke.czx.modules.project.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.suke.czx.modules.project.entity.Project;
import com.suke.czx.modules.project.entity.ProjectSearchBo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 应用模块名称: 项目
 * 代码描述: 项目持久层
 * copyright: AUZAR ALL RIGHTS RESERVED
 * company: AUZAR
 *
 * @author: 颜米晨
 * @date: 2021/09/07 10:14:02
 */
public interface ProjectMapper extends BaseMapper<Project> {

    /**
     * 分页查询项目列表
     * @param projectSearchBo 查询BO
     * @return 项目数据集
     */
    List<Project> pageProjectList(ProjectSearchBo projectSearchBo);

    /**
     * 更新项目状态
     * @param projectId 项目编码
     * @param status 项目状态
     * @param userId 操作者编码
     */
    void updateDelProject(@Param("projectId") Long projectId, @Param("status") Integer status, @Param("userId") Long userId);

    /**
     * 根据客户编码查询是否存在对应项目
     * @param customerId 客户编码
     */
    Integer countCustomerProject(Long customerId);

}
